using Circus.CodeEditor;
using Circus.CodeEditor.CodeCompletion;
using Circus.CodeEditor.TextSource;
using System;
using System.Drawing;
using System.Windows.Forms;
namespace Circus.CodeEditor
{
	public partial class EditConsts
	{
		public const int AnyBookMarkGroup = -1;
		public const int DefaultPrintHeaderOffsetX = 24;
		public const int DefaultPrintHeaderOffsetY = 8;
		public const int MinPageIndent = 4;
		public const EditBorderStyle DefaultBorderStyle = EditBorderStyle.Fixed3D;
		public const int WheelDelta = 120;
		public static OutlineOptions DefaultOutlineOptions = OutlineOptions.DrawLines | OutlineOptions.DrawButtons | OutlineOptions.ShowHints | OutlineOptions.HighlightOnMove;
		public static GutterOptions DefaultGutterOptions = GutterOptions.PaintBookMarks | GutterOptions.PaintLineModificators | GutterOptions.PaintLineNumbers | GutterOptions.PaintLinesOnGutter | GutterOptions.PaintLinesBeyondEof;
		public static CodeCompletionFlags DefaultCodeCompletionFlags = CodeCompletionFlags.CloseOnEscape | CodeCompletionFlags.AcceptOnEnter | CodeCompletionFlags.CloseOnMouseLeave | CodeCompletionFlags.CloseOnLostFocus | CodeCompletionFlags.AcceptOnDblClick | CodeCompletionFlags.FeetToScreen | CodeCompletionFlags.AcceptOnDelimiter | CodeCompletionFlags.AcceptOnTab | CodeCompletionFlags.AcceptOnSpace;
	
		public static SelectionOptions DefaultSelectionOptions = SelectionOptions.UseColors | SelectionOptions.OverwriteBlocks | SelectionOptions.SmartFormat | SelectionOptions.SelectLineOnTripleClick | SelectionOptions.CopyLineWhenEmpty | SelectionOptions.SelectWordOnCtrlClick | SelectionOptions.DrawBorder;
		public static NavigateOptions DefaultNavigateOptions = NavigateOptions.UpAtLineBegin | NavigateOptions.DownAtLineEnd;
		public static IndentOptions DefaultIndentOptions = IndentOptions.AutoIndent | IndentOptions.SmartIndent;
		public static UndoOptions DefaultUndoOptions = UndoOptions.AllowUndo | UndoOptions.GroupUndo;
		public static SearchOptions DefaultSearchOptions = SearchOptions.FindTextAtCursor | SearchOptions.FindSelectedText | SearchOptions.CycledSearch;
		public static LineStyleOptions DefaultLineStyleOptions = LineStyleOptions.InvertColors;
		public static AllowedSelectionMode DefaultSelectionMode = AllowedSelectionMode.Stream | AllowedSelectionMode.Block;
        public static ScrollingOptions DefaultScrollingOptions = ScrollingOptions.UseScrollDelta | ScrollingOptions.AllowSplitHorz | ScrollingOptions.AllowSplitVert | ScrollingOptions.VertButtons | ScrollingOptions.HorzButtons | ScrollingOptions.ScrollByPixels;
		public static Color DefaultHighlightOutlineAreaColor = Color.FromArgb(246, 247, 250);
		public static Color DefaultHighlightBlockAreaColor = Color.FromArgb(246, 247, 250);
		public static Color DefaultCodeCompletionBorderColor = Color.FromArgb(229, 195, 101);
		public static Color DefaultBracesForeColor = Color.Black;
		public static Color DefaultBracesBackColor = Color.Empty;
		public static Color DefaultArrowBackColor = Color.Silver;
		public static Color DefaultArrowForeColor = Color.Black;
		public static Color DefaultLineBookmarksColor = Color.Red;
		public static Color DefaultLineNumbersForeColor = Color.Teal;
		public static Color DefaultLineNumbersBackColor = SystemColors.Window;
		public static Color DefaultLineStyleForeColor = SystemColors.WindowText;
		public static Color DefaultLineStyleBackColor = SystemColors.Window;
		public static Color DefaultPrintHeaderForeColor = Color.Black;
		public static Color DefaultTransparentColor = Color.Fuchsia;
		public static Color DefaultUrlForeColor = Color.Blue;
		public static Color DefaultGutterBackColor = SystemColors.Control;
		public static Color DefaultOutlineImageBackColor = Color.FromArgb(233, 233, 233);
		public static Color DefaultGutterForeColor = Color.Gray;
		public static Color DefaultDisabledForeColor = SystemColors.GrayText;
		public static Color DefaultInfoBackColor = SystemColors.Info;
		public static Color DefaultLineSeparatorColor = SystemColors.ScrollBar;
		public static Color DefaultLineSeparatorLineColor = SystemColors.ControlText;
		public static Color DefaultContentDividerColor = Color.Gray;
		public static Color DefaultHighlightForeColor = SystemColors.HighlightText;
		public static Color DefaultHighlightBackColor = Color.FromArgb(173, 214, 255);
		public static Color DefaultInactiveHighlightForeColor = SystemColors.InactiveCaptionText;
		public static Color DefaultInactiveHighlightBackColor = SystemColors.InactiveCaption;
		public static Color DefaultSelectionBorderColor = SystemColors.InactiveCaption;
		public static Color DefaultSelectionDragColor = Color.Chocolate;
		public static Color DefaultMarginForeColor = Color.Gray;
		public static Color DefaultMarginColumnForeColor = Color.LightGray;
		public static Color DefaultColumnsIndentForeColor = SystemColors.ControlLight;
		public static Color DefaultOutlineForeColor = Color.DarkGray;
		public static Color DefaultSpellForeColor = Color.Navy;
		public static Color DefaultHeaderFontColor = Color.LightGray;
		public static Color DefaultRulerBackColor = Color.FromArgb(155, 187, 227);
		public static Color DefaultRulerIndentBackColor = Color.FromArgb(177, 202, 235);
		public static Color DefaultLineModificatorChangedColor = Color.FromArgb(255, 216, 0);
		public static Color DefaultLineModificatorSavedColor = Color.FromArgb(21, 194, 60);
		public static Color DefaultHyperTextForeColor = Color.Blue;
		public static Color DefaultWhiteSpaceForeColor = Color.Teal;
		public static Color DefaultSnippetBackColor = Color.LightSteelBlue;
		public static Color DefaultPageBackColor = Color.FromArgb(101, 145, 205);
		public static Color DefaultPageBorderColor = SystemColors.WindowFrame;
		public static Color DefaultUserMarginBackColor = SystemColors.Window;
		public static Color DefaultUserMarginForeColor = SystemColors.ControlText;
		public static FontStyle DefaultBracesFontStyle = FontStyle.Bold;
		public static FontStyle DefaultHeaderFontStyle = FontStyle.Regular;
		public static FontStyle DefaultUrlFontStyle = FontStyle.Underline;
		public static FontStyle DefaultCommentsFontStyle = FontStyle.Italic;
		public static char[] DefaultOpenBraces = new char[]
		{
			'(',
			'[',
			'{'
		};
		public static char[] DefaultClosingBraces = new char[]
		{
			')',
			']',
			'}'
		};
		public static string DefaultOutlineText = "...";
		public static string ColumnSeparator = "|";
		public static string DefaultDelimiters = ";.,:'\"{}[]()?!@#$%^&*-+=|\\/<>";
		public static string DefaultUrlChars = "_.:/@-?=~&;%+";
		public static string DefaultSpellDelimiters = ";.,:\"{}[]()?!@#$%^&*-+=|\\/<>";
		public static string DefaultAutoCorrectDelimiters = " .,;:" + '\r' + '\t';
		public static string MailTo = "MAILTO:";
		public static string WWW = "WWW.";
		public static string HTTPProtocol = "HTTP://";
		public static string HTTPSProtocol = "HTTPS://";
		public static string FTPProtocol = "FTP://";
		public static string GopherProtocol = "GOPHER://";
		public static string FileProtocol = "FILE://";
		public static string PageTag = "\\[page]";
		public static string PagesTag = "\\[pages]";
		public static string DateTag = "\\[date]";
		public static string TimeTag = "\\[time]";
		public static string UserTag = "\\[username]";
		public static string HeaderFontName = "Times New";
		public static int DefaultPageHorzOffset = 64;
		public static int DefaultPageVertOffset = 24;
		public static int DefaultPageMargin = 100;
		public static int DefaultPageMarginSize = 24;
		public static string DefaultUserMarginText = "\\[chars] chars";
		public static string LineTag = "\\[line]";
		public static string CharsTag = "\\[chars]";
		public static char TabSymbol = '→';
		public static char SpaceSymbol = '·';
		public static char LongSpaceSymbol = '\u3000';
		public static char EolSymbol = '¶';
		public static char EofSymbol = '_';
		public static char WordWrapSymbol = '…';
		public static string DottedText = "...";
		public static string DefaultCodeCompletionChars = ".(";
		public static string DefaultSnippetPattern = "[a-zA-Z_][a-zA-Z0-9_]*";
		public static string DefaultSnippetSelectedPattern = "selected";
		public static string DefaultSnippetEndPattern = "end";
		public static int DefaultDropDownCount = 8;
		public static int MaxDropDownCount = 10;
		public static int DefaultMinListBoxWidth = 50;
		public static int DefaultMinListBoxHeight = 50;
		public static int DefaultHintDelay = 500;
		public static int MaxHintWindowWidth = Screen.PrimaryScreen.Bounds.Width * 2 / 3;
		public static int MaxHintWindowCount = 20;
		public static int DefaultHintOffsetX = 8;
		public static int DefaultHintOffsetY = 4;
		public static int DefaultSpacesInTab = 4;
		public static float DefaultCodeCompletionFontSize = 9f;
		public static string DefaultCodeCompletionFont = "Segoe UI";
		public static int DefaultRulerHeight = 28;
		public static int DefaultRulerIndentSize = 2;
		public static int DefaultRulerHitWidth = 4;
		public static int DefaultRulerMinWidth = 40;
		public static string DefaultRulerFontName = "Arial";
		public static float DefaultRulerFontSize = 7f;
		public static int DefaultGutterOffset = 2;
		public static int DefaultCaretWidth = 2;
		public static int DefaultHorzScrollSize = 255;
		public static int DefaultHorzScrollDelta = 5;
		public static int DefaultSmoothScrollSteps = 10;
		public static int DefaultSmoothScrollDelay = 10;
		public static int DefaultSmoothScrollPause = 300;
		public static int DefaultGutterWidth = 16;
		public static int DefaultUserMarginWidth = 80;
		public static int DefaultMarginPosition = 80;
		public static int DefaultColumnMarginPosition = 16;
		public static int DefaultMarginHitWidth = 4;
		public static int DefaultTabStop = 4;
		public static int DefaultParserDelta = 128;
		public static int MaxPaintChar = 1024;
		public static int DefaultLineModificatorWidth = 6;
		public static int DefaltScrollSplitterSize = 6;
		public static int DefaultScrollDeltaRatio = 5;
		public static int DefaultCompletionStartDelay = 100;
		public static int MaxFontSize = 1024;
		public static int DefaultSelDelay = 32;
		public static int DefaultDragDelay = 500;
		public static int DefaultOutlineDelay = 1000;
		public static int DefaultBracesDelay = 2000;
		public static int DefaultHideHintDelay = 2500;
		public static int DefaultWrapDelta = 128;
		public static int DefaultCollasedImageWidth = 8;
		public static int DefaultColumnSeparator = 2;
		public static int DefaultRowSeparator = 2;
		public static int DefaultLineNumbersStart = 1;
		public static int DefaultLineNumbersIndent = 2;
		public static int DefaultOutliningIndent = 5;
		public static int DefaultBookMarkImageIndex = 10;
		public static int DefaultWrapImageIndex = 13;
		public static Keys[] NavKeys = new Keys[]
		{
			Keys.Left,
			Keys.Right,
			Keys.Up,
			Keys.Down,
			Keys.Prior,
			Keys.Next,
			Keys.End,
			Keys.Home,
			Keys.Tab
		};
		public static int DefaultThreadWaitTimeout = 1000;
	}
}
